create_clock -period 25.000 -name clk_i -waveform {0.000 12.500} [get_ports clk_i]
create_clock -period 16.667 -name ft_clkout_i -waveform {0.000 8.333} [get_ports ft_clkout_i]
# set_output_delay -clock ft_clkout_i -max 8 [get_ports ft_data_io]

set_clock_groups -asynchronous -group [get_clocks clk_i -include_generated_clocks]
set_clock_groups -asynchronous -group [get_clocks ft_clkout_i -include_generated_clocks]

set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets ft_clkout_i_IBUF]
# set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets ext1_io_IBUF[0]]

set_property CONFIG_VOLTAGE 3.3 [current_design]
set_property CFGBVS VCCO [current_design]

set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN N11} [get_ports clk_i]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN D1} [get_ports led_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN C11} [get_ports ext1_io[0]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN B10} [get_ports ext1_io[1]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN A9} [get_ports ext1_io[2]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN C12} [get_ports ext1_io[3]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN B9} [get_ports ext1_io[4]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN A8} [get_ports ext1_io[5]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN B7} [get_ports ext2_io[0]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN A5} [get_ports ext2_io[1]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN A4} [get_ports ext2_io[2]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN A7} [get_ports ext2_io[3]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN B5} [get_ports ext2_io[4]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN A3} [get_ports ext2_io[5]]

set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN F15} [get_ports ft_data_io[0]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN G16} [get_ports ft_data_io[1]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN G15} [get_ports ft_data_io[2]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN F14} [get_ports ft_data_io[3]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN E16} [get_ports ft_data_io[4]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN E15} [get_ports ft_data_io[5]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN D16} [get_ports ft_data_io[6]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN D15} [get_ports ft_data_io[7]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN B16} [get_ports ft_rxf_n_i]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN B15} [get_ports ft_txe_n_i]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN B14} [get_ports ft_rd_n_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN A14} [get_ports ft_wr_n_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN A13} [get_ports ft_siwua_n_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN A15} [get_ports ft_clkout_i]
# set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN D13} [get_ports ft_clkout_i]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN A12} [get_ports ft_oe_n_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN C16} [get_ports ft_suspend_n_i]

set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN L2} [get_ports adc_d_i[0]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN K2} [get_ports adc_d_i[1]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN K1} [get_ports adc_d_i[2]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN J3} [get_ports adc_d_i[3]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN H1} [get_ports adc_d_i[4]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN H2} [get_ports adc_d_i[5]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN H3} [get_ports adc_d_i[6]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN G2} [get_ports adc_d_i[7]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN G1} [get_ports adc_d_i[8]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN F2} [get_ports adc_d_i[9]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN E1} [get_ports adc_d_i[10]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN E2} [get_ports adc_d_i[11]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN C2} [get_ports adc_of_i[0]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN M1} [get_ports adc_of_i[1]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN B2} [get_ports adc_oe_o[0]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN P1} [get_ports adc_oe_o[1]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN B1} [get_ports adc_shdn_o[0]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN N2} [get_ports adc_shdn_o[1]]

set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN N16} [get_ports sd_data_i[0]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN M16} [get_ports sd_data_i[1]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN R16} [get_ports sd_data_i[2]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN R15} [get_ports sd_data_i[3]]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN P16} [get_ports sd_cmd_i]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN N14} [get_ports sd_clk_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN H16} [get_ports sd_detect_i]

set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN J4} [get_ports mix_enbl_n_o]

set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN T2} [get_ports pa_en_n_o]

set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN R3} [get_ports adf_ce_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN N1} [get_ports adf_le_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN R1} [get_ports adf_clk_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN K3} [get_ports adf_muxout_i]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN P3} [get_ports adf_txdata_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN M2} [get_ports adf_data_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN T4} [get_ports adf_done_i]

set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN L12} [get_ports flash_cs_n_o]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN J14} [get_ports flash_miso_i]
set_property -dict {IOSTANDARD LVCMOS33 PACKAGE_PIN J13} [get_ports flash_mosi_o]

set_property PULLUP TRUE [get_ports adf_muxout_i]
set_property PULLUP TRUE [get_ports adf_done_i]
set_property PULLUP TRUE [get_ports sd_detect_i]
